home *** CD-ROM | disk | FTP | other *** search
- 10 EPON$ = CHR$(14) ' Control code to turn Expanded mode ON
- 20 EPOFF$ = CHR$(20) ' Control code to turn Expanded mode OFF
- 30 EMON$ = CHR$(27)+"E" ' Control code to turn Emphasized mode ON
- 40 EMOFF$ = CHR$(27)+"F" ' Control code to turn Emphasized mode OFF
- 50 DATA 31,28,31,30,31,30,31,31,30,31,30,31
- 60 DATA "JANUARY","FEBRUARY","MARCH","APRIL","MAY","JUNE","JULY","AUGUST","SEPTEMBER","OCTOBER","NOVEMBER","DECEMBER"
- 70 DIM FDOM(12), ARY(3,6,6), LOM(12), NOM$(12), TMP$(3)
- 80 DOW$="SU MO TU WE TH FR SA"
- 90 SP = 21
- 100 IF EPON$ = "" THEN SP = 1
- 110 CLS : KEY OFF : RESTORE
- 120 FOR I = 1 TO 12 : READ LOM(I) : NEXT I
- 130 FOR I = 1 TO 12 : READ NOM$(I) : NEXT I
- 140 INPUT "Please enter the year : ",YEAR
- 150 IF YEAR <= 0 THEN GOTO 110
- 160 LOCATE 2,1 : PRINT "Send to printer ?(Y/N) ";
- 170 YN$ = INKEY$ : IF YN$="" THEN GOTO 170
- 180 IF YN$<>"Y" AND YN$<>"y" AND YN$<>"N" AND YN$<>"n" THEN GOTO 160
- 190 PRINT YN$
- 200 STP = 0 : IF YN$="Y" OR YN$="y" THEN STP = 1
- 210 H$ = ""
- 220 FOR I = 1 TO 32
- 230 H$ = H$ + " "
- 240 NEXT I
- 250 H$ = H$ + "CALENDAR OF" + STR$(YEAR)
- 260 PRINT H$ : PRINT : PRINT : IF STP THEN H$=MID$(H$,SP) : LPRINT EPON$+EMON$+H$+EMOFF$+EPOFF$ : LPRINT : LPRINT
- 270 Q = YEAR - 1 + INT((YEAR-1)/4) - INT((YEAR-1)/100) + INT((YEAR-1)/400) + 1
- 280 FDOM(1) = Q - INT(Q/7) * 7
- 290 IF INT(YEAR/4) * 4-YEAR = 0 THEN LOM(2) = 29
- 300 IF INT(YEAR/100)*100-YEAR = 0 THEN LOM(2) = 28
- 310 IF INT(YEAR/400)*400-YEAR = 0 THEN LOM(2) = 29
- 320 FOR I = 2 TO 12
- 330 FDOM(I) = FDOM(I-1) + LOM(I-1) - 28
- 340 WHILE FDOM(I) >= 7
- 350 FDOM(I) = FDOM(I) - 7
- 360 WEND
- 370 NEXT I
- 380 P2$ = " " + DOW$ + " " + DOW$ + " " + DOW$
- 390 FOR LOOP = 1 TO 4
- 400 FOR I = 1 TO 3 : FOR J = 1 TO 6 : FOR K = 0 TO 6 : ARY(I,J,K) = 0 : NEXT K : NEXT J : NEXT I
- 410 FOR MO = 1 TO 3
- 420 WK = 1 : K = 3*LOOP-3+MO : J = FDOM(K)
- 430 FOR DATE = 1 TO LOM(K)
- 440 ARY(MO,WK,J) = DATE
- 450 J = J + 1 : IF J > 6 THEN J = 0 : WK = WK + 1
- 460 NEXT DATE
- 470 NEXT MO
- 480 X = LOOP*3-2 : P1$ = ""
- 490 FOR I = 1 TO 70 : P1$ = P1$ + " " : NEXT I
- 500 MID$(P1$,16-LEN(NOM$(X))/2) = NOM$(X) : MID$(P1$,41-LEN(NOM$(X+1))/2) = NOM$(X+1) : MID$(P1$,66-LEN(NOM$(X+2))/2) = NOM$(X+2)
- 510 PRINT : PRINT : IF STP THEN LPRINT : LPRINT
- 520 PRINT P1$ : PRINT : IF STP THEN LPRINT EMON$+P1$+EMOFF$ : LPRINT
- 530 PRINT P2$ : IF STP THEN LPRINT P2$
- 540 FOR PLOOP = 1 TO 6
- 550 FOR I = 1 TO 3 : TMP$(I) = "" : NEXT I : TTOUT$ = ""
- 560 FOR QLOOP = 1 TO 3
- 570 FOR RLOOP = 0 TO 6
- 580 CT = ARY(QLOOP,PLOOP,RLOOP) : AT$ = STR$(CT)
- 590 IF CT < 10 THEN AT$ = " " + STR$(CT)
- 600 IF CT = 0 THEN AT$ = " "
- 610 TMP$(QLOOP) = TMP$(QLOOP) + AT$
- 620 NEXT RLOOP
- 630 NEXT QLOOP
- 640 TTOUT$ = " " + TMP$(1) + " " + TMP$(2) + " " + TMP$(3)
- 650 PRINT TTOUT$ : IF STP THEN LPRINT TTOUT$
- 660 NEXT PLOOP
- 670 NEXT LOOP
- 680 PRINT:PRINT:PRINT
- 690 LOCATE 24,1 : PRINT "Restart or Exit (R/E) ";
- 700 YN$ = INKEY$ : IF YN$ = "" THEN GOTO 690
- 710 IF YN$<>"R" AND YN$<>"r" AND YN$<>"E" AND YN$<>"e" THEN GOTO 690
- 720 PRINT YN$
- 730 IF YN$="R" OR YN$="r" THEN GOTO 110
- 740 IF YN$="E" OR YN$="e" THEN SYSTEM
- 750 GOTO 690